
package Datos;

import Negocio.Conjunto;
import Negocio.Usuario;
import Negocio.Usuario_conjunto;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
import java.util.ArrayList;


public class Usuario_ConjuntoDB {
    public boolean grabar(Usuario_conjunto uc) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query = "insert into usuario_conjunto(cedula_usuario, id_conjunto, fecha, calificacion) values('"+uc.getUsuario().getCedula()+"', '"+uc.getConjunto().getId()+", " + uc.getFecha() +"', '"+uc.getCalificacion() +"')";
        Boolean resultado = db.ingreso(query);
        db.cerrarConexion();
        return resultado;
    }
    
     public int calificacion(String cedula, int calificacion, int id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="update usuario_conjunto set calificacion='" + calificacion + "' where cedula_usuario='" + cedula + "' and id_conjunto='" + id+"'";
        int resultado = db.modificacioneliminacion(query);
        db.cerrarConexion();
        return resultado;
    }
     

     
     
    
    public Usuario_conjunto buscar(int id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from usuario_conjunto where id_conjunto =" + id;        
        ResultSet resultado = db.seleccion(query);
        Usuario_conjunto uc=null;
        Usuario usuario=null;
        Conjunto conjunto = null;
               
        if (resultado!=null) {
            resultado.next();
            uc = new Usuario_conjunto();
            usuario = new Usuario();
            conjunto = new Conjunto();
            uc.setCalificacion(resultado.getInt("calificacion"));
            uc.setFecha(resultado.getString("fecha"));
            usuario.setCedula(resultado.getString("cedula_usuario"));
            conjunto.setId(resultado.getInt("id_conjunto"));
            uc.setUsuario(usuario);
            uc.setConjunto(conjunto);          
        }         
        db.cerrarConexion();
        return uc;        
    }
    
    public ArrayList listar() throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from usuario_conjunto ";
        ResultSet resultado = db.seleccion(query);
        Usuario_conjunto uc=null;
        Usuario usuario=null;
        Conjunto conjunto = null;
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            uc = new Usuario_conjunto();
             usuario = new Usuario();
            conjunto = new Conjunto();
            usuario.setCedula(resultado.getString(1));
            conjunto.setId(resultado.getInt(2));
            uc.setFecha(resultado.getString(3));
            uc.setCalificacion(resultado.getInt(4));
            uc.setConjunto(conjunto);
            uc.setUsuario(usuario);
            todos.add(uc);
        }
        db.cerrarConexion();
        return todos;
    }
}
